// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the GNU Affero General Public License v3.0.
// See the LICENCE file in the repository root for full licence text.

// main: compiled.less
@import "app";

.t-section {
  .u-section--bg-normal {
    // the bar that shows the section we're currently in
    background-color: @osu-colour-h1 !important;
  }

  .u-section--color-hover {
    &:focus,
    &:hover,
    &:active {
      color: @osu-colour-l1 !important;
    }
  }

  .u-section--gradient-down {
    // the parts after 50% are for the header size transition.

    background-image: linear-gradient(
      hsla(var(--hsl-h2), 0.9) 0%,
      @osu-colour-h2 37.5%,
      @osu-colour-h2 50%,
      @osu-colour-h2 50%,
      @osu-colour-h2 100%
    );
    background-size: 200% 200%;
  }
}

.u-section--bg {
  background-color: @osu-colour-h2;
}

.menu-colour(beatmaps, osu-colour-blue-1);
.menu-colour(beatmapsets, osu-colour-blue-1);
.menu-colour(community, osu-colour-pink-1);
.menu-colour(error, osu-colour-pink-1);
.menu-colour(help, osu-colour-orange-1);
.menu-colour(home, osu-colour-purple-1);
.menu-colour(multiplayer, osu-colour-pink-1);
.menu-colour(rankings, osu-colour-green-1);
.menu-colour(store, osu-colour-darkorange-1);

.menu-colour(@section, @colour) {
  .u-section-@{section}--before-bg-normal {
    &::before {
      background-color: @@colour !important;
    }
  }
}

.fn-changelog-stream(beta40);
.fn-changelog-stream(cuttingedge);
.fn-changelog-stream(lazer);
.fn-changelog-stream(stable40);
.fn-changelog-stream(tachyon);
.fn-changelog-stream(web);

// Actually user filters, not changelog streams
.fn-changelog-stream(all);
.fn-changelog-stream(online);
.fn-changelog-stream(offline);

// FIXME: change to something more generic like selection filter
.fn-changelog-stream(@stream) {
  @color-name: "changelog-stream--@{stream}";

  .t-changelog-stream--@{stream} {
    .u-changelog-stream--bg {
      background-color: @@color-name;
    }

    .u-changelog-stream--text {
      color: @@color-name;
    }
  }
}

.fn-forum(category-beatmaps, @purple, @purple-text, @purple);
.fn-forum(category-language-specific, @yellow, @yellow-text, @yellow-dark);
.fn-forum(category-management, @gray-light, @gray-text, @gray);
.fn-forum(category-osu, @pink, @pink-text, @pink);
.fn-forum(category-other, @green, @green-text, @green);

.fn-forum(@category, @bg, @text, @text-hover) {
  .t-forum-@{category} {
    --forum-bg: @bg;
    --forum-text: @text;
    --forum-text-hover: @text-hover;
    .at2x-var(--forum-cover, "~@images/headers/forum-topic-covers/forum-cover-@{category}.jpg");
  }
}
